
# 内置函数-数学运算
# sum 求和
print(sum((1, 2, 34.5)))
# len 求长度
print(len({'a':2, 'b':3}))
print(len('abcd'))

# sorted 排序 不改变原来数据，
print(sorted([1, 9, 2, 10, 4, 3]))
print(sorted('afaef', reverse=True))
print(sorted((1, 9, 2, 10, 4, 3), reverse=True))

# map 逐位计算
print(list(map(len, ['abc', 'de', 'f'])))
def func(x):
    return x**2
print(list(map(func, [10, 20, 30])))

# 匿名函数
# lambda x:x**2
# 结合匿名函数进行逐位计算
print(list(map(lambda x: x**2, [10, 20, 30])))
# 列表推导
print([i ** 2 for i in [10, 20, 30]])

# max 最大值
print(max((10, 90, 89, 44)))
# min 最小值
print(min((10, 90, 89, 44)))
# 计算算式
print(eval('3+5*2'))
num = 2
print(eval('3+2*num'))
# 带余数的除法
print(divmod(9, 2))
print(divmod(10, 2))
print(divmod(13, 3))
print(divmod(15, 4))
# 绝对值
print(abs(-10))
print(abs(10))

# 幂
print(pow(2, 3))
print(2**3)


# 练习，生成长度为100的列表，且元素随机在0-100之间取值的数，
# 对该列表进行排序并求和
import random
numbers =[random.randint(0, 100) for i in range(100)]
numbers = sorted(numbers)
print(sum(numbers))
print(numbers)


